openapi: 3.0.1
info:
  title: Product Master Data Api
  description: ''
  version: '1.0'
paths:
  /api/brands:
    get:
      tags:
        - Brand
      summary: Get the list of brands of a Company
      description: Get the list of brands of a Company
      operationId: GetBrandsByOwnerCompanyIdQuery
      parameters:
        - name: OwnerCompanyId
          in: query
          required: true
          schema:
            type: string
            format: uuid
        - name: IncludeInactive
          in: query
          schema:
            type: boolean
        - name: LanguageCode
          in: query
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                title: List`1
                type: array
                items:
                  $ref: >-
                    #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Queries.GetBrandsByOwnerCompanyIdQuery_Brand
        '403':
          description: 'Error Code: 50baa73d-3f3b-4d3d-b308-ad91f04a3a14'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
    post:
      tags:
        - Brand
      summary: Create a new Brand
      description: Create a new Brand for a Company
      operationId: CreateBrandCommand
      requestBody:
        content:
          application/json-patch+json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsCreateBrandCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsCreateBrandCommandBodyDynamicMessageContract
          application/json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsCreateBrandCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsCreateBrandCommandBodyDynamicMessageContract
          application/*+json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsCreateBrandCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsCreateBrandCommandBodyDynamicMessageContract
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.CreateBrandCommand_Brand
        '400':
          description: 'Error Code: c2bead2c-eddb-45a6-b41b-d6e250146bc8'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
        '403':
          description: |-
            Error Code: 50baa73d-3f3b-4d3d-b308-ad91f04a3a14
            Error Code: cca25833-0fb4-4a9a-9dac-1e4294c2e033
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
        '404':
          description: 'Error Code: d6f45f8a-909c-402f-b3a6-ba8e3d99c290'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
  /api/manufactureditems:
    get:
      tags:
        - Manufactured Item
      summary: Search Manufactured Items by filter
      description: Search Manufactured Items by filter
      operationId: GetManufacturedItemsByFiltersQuery
      parameters:
        - name: OwnerCompanyId
          in: query
          required: true
          schema:
            type: string
            format: uuid
        - name: SupplierCompanyId
          in: query
          schema:
            type: string
        - name: PackerCompanyId
          in: query
          schema:
            type: string
        - name: TradeItemId
          in: query
          schema:
            type: string
        - name: ManufacturedItemName
          in: query
          schema:
            type: string
        - name: StartAvailabilityDate
          in: query
          schema:
            type: string
        - name: EndAvailabilityDate
          in: query
          schema:
            type: string
        - name: CountryOfOrigin
          in: query
          schema:
            type: string
        - name: TargetMarket
          in: query
          schema:
            type: string
        - name: PointOfSalesId
          in: query
          schema:
            type: string
        - name: BrandId
          in: query
          schema:
            type: string
        - name: TradeItemName
          in: query
          schema:
            type: string
        - name: CategoryId
          in: query
          schema:
            type: string
        - name: CategoryItemId
          in: query
          schema:
            type: string
        - name: NetContentValue
          in: query
          schema:
            type: string
        - name: NetContentUnitId
          in: query
          schema:
            type: string
        - name: GTIN
          in: query
          schema:
            type: string
        - name: Skip
          in: query
          schema:
            type: string
        - name: Take
          in: query
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Queries.GetManufacturedItemsByFiltersQuery_ManufacturedItems
  /api/tradeitems:
    get:
      tags:
        - Trade Item
      summary: Search Trade Items by filter
      description: Search Trade Items by filter
      operationId: GetTradeItemsByFiltersQuery
      parameters:
        - name: OwnerCompanyId
          in: query
          required: true
          schema:
            type: string
            format: uuid
        - name: BrandId
          in: query
          schema:
            type: string
        - name: CategoryId
          in: query
          schema:
            type: string
        - name: CategoryItemId
          in: query
          schema:
            type: string
        - name: GTIN
          in: query
          schema:
            type: string
        - name: NetContentValue
          in: query
          schema:
            type: string
        - name: NetContentUnit
          in: query
          schema:
            type: string
        - name: ItemName
          in: query
          schema:
            type: string
        - name: ProductRange
          in: query
          schema:
            type: string
        - name: FunctionalName
          in: query
          schema:
            type: string
        - name: Variant
          in: query
          schema:
            type: string
        - name: PackagingFormat
          in: query
          schema:
            type: string
        - name: IsTradeItemVariableUnit
          in: query
          schema:
            type: string
        - name: IsTradeItemBaseUnit
          in: query
          schema:
            type: string
        - name: IsTradeItemSeasonal
          in: query
          schema:
            type: string
        - name: SeasonalAvailabilityStartDate
          in: query
          schema:
            type: string
        - name: SeasonalAvailabilityEndDate
          in: query
          schema:
            type: string
        - name: ProductTypeId
          in: query
          schema:
            type: string
        - name: DietTypeCodeId
          in: query
          schema:
            type: string
        - name: TradeItemStatus
          in: query
          schema:
            type: string
        - name: Skip
          in: query
          schema:
            type: string
        - name: Take
          in: query
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Queries.GetTradeItemsByFiltersQuery_TradeItem
  /api/tradeItem/{id}/manufacturedItem:
    post:
      tags:
        - Manufactured Item
      summary: Create a new Manufactured item
      description: Create a new Manufactured item
      operationId: CreateManufacturedItemCommand
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
            format: uuid
      requestBody:
        content:
          application/json-patch+json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsCreateManufacturedItemCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsCreateManufacturedItemCommandBodyDynamicMessageContract
          application/json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsCreateManufacturedItemCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsCreateManufacturedItemCommandBodyDynamicMessageContract
          application/*+json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsCreateManufacturedItemCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsCreateManufacturedItemCommandBodyDynamicMessageContract
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.CreateManufacturedItemCommand_ManufacturedItem
        '403':
          description: 'Error Code: 50baa73d-3f3b-4d3d-b308-ad91f04a3a14'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
  /api/manufacturedItem:
    post:
      tags:
        - Manufactured Item
      summary: Create a new Trade Item and Manufactured Item
      description: Create a new Trade Item and Manufactured Item
      operationId: CreateTradeItemAndManufacturedItemCommand
      requestBody:
        content:
          application/json-patch+json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsCreateTradeItemAndManufacturedItemCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsCreateTradeItemAndManufacturedItemCommandBodyDynamicMessageContract
          application/json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsCreateTradeItemAndManufacturedItemCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsCreateTradeItemAndManufacturedItemCommandBodyDynamicMessageContract
          application/*+json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsCreateTradeItemAndManufacturedItemCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsCreateTradeItemAndManufacturedItemCommandBodyDynamicMessageContract
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.CreateTradeItemAndManufacturedItemCommand_ManufacturedItem
        '403':
          description: |-
            Error Code: 50baa73d-3f3b-4d3d-b308-ad91f04a3a14
            Error Code: 912cc528-856a-4741-951e-7edafbe25329
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
  /api/tradeItem:
    post:
      tags:
        - Trade Item
      summary: Create a new Trade Item
      description: Create a new Trade Item
      operationId: CreateTradeItemCommand
      requestBody:
        content:
          application/json-patch+json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsCreateTradeItemCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsCreateTradeItemCommandBodyDynamicMessageContract
          application/json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsCreateTradeItemCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsCreateTradeItemCommandBodyDynamicMessageContract
          application/*+json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsCreateTradeItemCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsCreateTradeItemCommandBodyDynamicMessageContract
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.CreateTradeItemCommand_TradeItem
        '400':
          description: 'Error Code: a0c24df3-69e0-488b-9b85-a8d529f8cf98'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
        '403':
          description: |-
            Error Code: 50baa73d-3f3b-4d3d-b308-ad91f04a3a14
            Error Code: 912cc528-856a-4741-951e-7edafbe25329
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
  /api/brands/{id}/enable:
    delete:
      tags:
        - Brand
      summary: Archive a Brand
      description: Archive a Brand for the Current Company
      operationId: DisableBrandCommand
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
            format: uuid
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.DisableBrandCommand_Brand
        '403':
          description: |-
            Error Code: 50baa73d-3f3b-4d3d-b308-ad91f04a3a14
            Error Code: b8b7f032-589f-4f73-be4d-ce631495e5fc
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
        '404':
          description: 'Error Code: d6f45f8a-909c-402f-b3a6-ba8e3d99c290'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
    post:
      tags:
        - Brand
      summary: Unarchive a Brand
      description: Unarchive a Brand for the Current Company
      operationId: EnableBrandCommand
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
            format: uuid
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.EnableBrandCommand_Brand
        '403':
          description: 'Error Code: 50baa73d-3f3b-4d3d-b308-ad91f04a3a14'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
        '404':
          description: 'Error Code: d6f45f8a-909c-402f-b3a6-ba8e3d99c290'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
  /api/tradeitems/enable/collections:
    delete:
      tags:
        - Trade Item
      summary: Archive a collection of TradeItems
      description: Archive a collection of TradeItems
      operationId: DisableTradeItemCommand
      requestBody:
        content:
          application/json-patch+json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsDisableTradeItemCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsDisableTradeItemCommandBodyDynamicMessageContract
          application/json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsDisableTradeItemCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsDisableTradeItemCommandBodyDynamicMessageContract
          application/*+json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsDisableTradeItemCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsDisableTradeItemCommandBodyDynamicMessageContract
      responses:
        '200':
          description: OK
        '403':
          description: 'Error Code: 50baa73d-3f3b-4d3d-b308-ad91f04a3a14'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
        '404':
          description: 'Error Code: d6f45f8a-909c-402f-b3a6-ba8e3d99c290'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
  /api/tradeitems/{id}/enable:
    post:
      tags:
        - Trade Item
      summary: Unarchive a TradeItem
      description: Unarchive a TradeItem for the Current Company
      operationId: EnableTradeItemCommand
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
            format: uuid
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.EnableTradeItemCommand_TradeItem
        '403':
          description: 'Error Code: 50baa73d-3f3b-4d3d-b308-ad91f04a3a14'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
        '404':
          description: 'Error Code: d6f45f8a-909c-402f-b3a6-ba8e3d99c290'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
  /api/manufacturedItems/{id}:
    patch:
      tags:
        - Manufactured Item
      summary: Partial update an existing Manufactured Item
      description: Partial update an existing Manufactured Item
      operationId: PartialUpdateManufacturedItemCommand
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
            format: uuid
      requestBody:
        content:
          application/json-patch+json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsPartialUpdateManufacturedItemCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsPartialUpdateManufacturedItemCommandBodyDynamicMessageContract
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.PartialUpdateManufacturedItemCommand_ManufacturedItem
        '403':
          description: 'Error Code: 50baa73d-3f3b-4d3d-b308-ad91f04a3a14'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
        '404':
          description: 'Error Code: d6f45f8a-909c-402f-b3a6-ba8e3d99c290'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
    put:
      tags:
        - Manufactured Item
      summary: Update an existing Manufactured Item
      description: Update an existing Manufactured Item
      operationId: UpdateManufacturedItemCommand
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
            format: uuid
      requestBody:
        content:
          application/json-patch+json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateManufacturedItemCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateManufacturedItemCommandBodyDynamicMessageContract
          application/json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateManufacturedItemCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateManufacturedItemCommandBodyDynamicMessageContract
          application/*+json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateManufacturedItemCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateManufacturedItemCommandBodyDynamicMessageContract
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.UpdateManufacturedItemCommand_ManufacturedItem
        '403':
          description: 'Error Code: 50baa73d-3f3b-4d3d-b308-ad91f04a3a14'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
        '404':
          description: 'Error Code: d6f45f8a-909c-402f-b3a6-ba8e3d99c290'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
  /api/tradeItems/{id}:
    patch:
      tags:
        - Trade Item
      summary: Partial update an existing Trade Item
      description: Partial update an existing Trade Item
      operationId: PartialUpdateTradeItemCommand
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
            format: uuid
      requestBody:
        content:
          application/json-patch+json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsPartialUpdateTradeItemCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsPartialUpdateTradeItemCommandBodyDynamicMessageContract
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.PartialUpdateTradeItemCommand_TradeItem
        '400':
          description: 'Error Code: a0c24df3-69e0-488b-9b85-a8d529f8cf98'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
        '403':
          description: |-
            Error Code: 50baa73d-3f3b-4d3d-b308-ad91f04a3a14
            Error Code: 912cc528-856a-4741-951e-7edafbe25329
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
        '404':
          description: 'Error Code: d6f45f8a-909c-402f-b3a6-ba8e3d99c290'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
    put:
      tags:
        - Trade Item
      summary: Update an existing Trade Item
      description: Update an existing Trade Item
      operationId: UpdateTradeItemCommand
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
            format: uuid
      requestBody:
        content:
          application/json-patch+json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateTradeItemCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateTradeItemCommandBodyDynamicMessageContract
          application/json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateTradeItemCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateTradeItemCommandBodyDynamicMessageContract
          application/*+json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateTradeItemCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateTradeItemCommandBodyDynamicMessageContract
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.UpdateTradeItemCommand_TradeItem
        '400':
          description: 'Error Code: a0c24df3-69e0-488b-9b85-a8d529f8cf98'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
        '403':
          description: |-
            Error Code: 50baa73d-3f3b-4d3d-b308-ad91f04a3a14
            Error Code: 912cc528-856a-4741-951e-7edafbe25329
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
        '404':
          description: 'Error Code: d6f45f8a-909c-402f-b3a6-ba8e3d99c290'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
  /api/brands/{id}:
    put:
      tags:
        - Brand
      summary: Update a Brand name
      description: Update a brand name for the current Company
      operationId: UpdateBrandCommand
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
            format: uuid
      requestBody:
        content:
          application/json-patch+json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateBrandCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateBrandCommandBodyDynamicMessageContract
          application/json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateBrandCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateBrandCommandBodyDynamicMessageContract
          application/*+json:
            schema:
              title: >-
                TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateBrandCommandBodyDynamicMessageContract
              allOf:
                - $ref: >-
                    #/components/schemas/TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateBrandCommandBodyDynamicMessageContract
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.UpdateBrandCommand_Brand
        '400':
          description: 'Error Code: c2bead2c-eddb-45a6-b41b-d6e250146bc8'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
        '403':
          description: |-
            Error Code: 50baa73d-3f3b-4d3d-b308-ad91f04a3a14
            Error Code: cca25833-0fb4-4a9a-9dac-1e4294c2e033
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
        '404':
          description: 'Error Code: d6f45f8a-909c-402f-b3a6-ba8e3d99c290'
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse
components:
  schemas:
    JsonPatchDocument:
      type: array
      items:
        $ref: '#/components/schemas/JsonPatchOperation'
      description: Array of operations to perform
    JsonPatchOperation:
      type: object
      properties:
        op:
          type: string
        value:
          oneOf:
            - type: object
              nullable: true
            - type: object
              nullable: true
        path:
          type: string
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.CreateBrandCommand_Brand:
      title: Brand
      type: object
      properties:
        brandId:
          type: string
          format: uuid
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.CreateManufacturedItemCommand_ManufacturedItem:
      title: ManufacturedItem
      type: object
      properties:
        manufacturedItemId:
          type: string
          format: uuid
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.CreateTradeItemAndManufacturedItemCommand_Comment:
      title: Comment
      type: object
      properties:
        value:
          type: string
          nullable: true
        authorId:
          type: string
          nullable: true
        commentDate:
          type: string
          nullable: true
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.CreateTradeItemAndManufacturedItemCommand_ManufacturedItem:
      title: ManufacturedItem
      type: object
      properties:
        tradeItemId:
          type: string
          format: uuid
        manufacturedItemId:
          type: string
          format: uuid
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.CreateTradeItemAndManufacturedItemCommand_NetContent:
      title: NetContent
      type: object
      properties:
        value:
          type: string
          nullable: true
        unitOfMeasure:
          type: string
          nullable: true
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.CreateTradeItemAndManufacturedItemCommand_RetailerCustomizedAttribute:
      title: RetailerCustomizedAttribute
      type: object
      properties:
        retailerLabel:
          type: string
          nullable: true
        retailerCode:
          type: string
          nullable: true
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.CreateTradeItemCommand_Comment:
      title: Comment
      type: object
      properties:
        value:
          type: string
          nullable: true
        authorId:
          type: string
          nullable: true
        commentDate:
          type: string
          nullable: true
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.CreateTradeItemCommand_NetContent:
      title: NetContent
      type: object
      properties:
        value:
          type: string
          nullable: true
        unitOfMeasure:
          type: string
          nullable: true
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.CreateTradeItemCommand_RetailerCustomizedAttribute:
      title: RetailerCustomizedAttribute
      type: object
      properties:
        retailerLabel:
          type: string
          nullable: true
        retailerCode:
          type: string
          nullable: true
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.CreateTradeItemCommand_TradeItem:
      title: TradeItem
      type: object
      properties:
        tradeItemId:
          type: string
          format: uuid
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.DisableBrandCommand_Brand:
      title: Brand
      type: object
      properties:
        brandId:
          type: string
          format: uuid
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.EnableBrandCommand_Brand:
      title: Brand
      type: object
      properties:
        brandId:
          type: string
          format: uuid
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.EnableTradeItemCommand_TradeItem:
      title: TradeItem
      type: object
      properties:
        tradeItemId:
          type: string
          format: uuid
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.PartialUpdateManufacturedItemCommand_ManufacturedItem:
      title: ManufacturedItem
      type: object
      properties:
        manufacturedItemId:
          type: string
          format: uuid
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.PartialUpdateTradeItemCommand_Comment:
      title: Comment
      type: object
      properties:
        id:
          type: string
          nullable: true
        value:
          type: string
          nullable: true
        authorId:
          type: string
          nullable: true
        commentDate:
          type: string
          nullable: true
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.PartialUpdateTradeItemCommand_NetContent:
      title: NetContent
      type: object
      properties:
        value:
          type: string
          nullable: true
        unitOfMeasure:
          type: string
          nullable: true
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.PartialUpdateTradeItemCommand_RetailerCustomizedAttribute:
      title: RetailerCustomizedAttribute
      type: object
      properties:
        retailerLabel:
          type: string
          nullable: true
        retailerCode:
          type: string
          nullable: true
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.PartialUpdateTradeItemCommand_TradeItem:
      title: TradeItem
      type: object
      properties:
        tradeItemId:
          type: string
          format: uuid
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.UpdateBrandCommand_Brand:
      title: Brand
      type: object
      properties:
        brandId:
          type: string
          format: uuid
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.UpdateManufacturedItemCommand_ManufacturedItem:
      title: ManufacturedItem
      type: object
      properties:
        manufacturedItemId:
          type: string
          format: uuid
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.UpdateTradeItemCommand_Comment:
      title: Comment
      type: object
      properties:
        id:
          type: string
          nullable: true
        value:
          type: string
          nullable: true
        authorId:
          type: string
          nullable: true
        commentDate:
          type: string
          nullable: true
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.UpdateTradeItemCommand_NetContent:
      title: NetContent
      type: object
      properties:
        value:
          type: string
          nullable: true
        unitOfMeasure:
          type: string
          nullable: true
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.UpdateTradeItemCommand_RetailerCustomizedAttribute:
      title: RetailerCustomizedAttribute
      type: object
      properties:
        retailerLabel:
          type: string
          nullable: true
        retailerCode:
          type: string
          nullable: true
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Commands.UpdateTradeItemCommand_TradeItem:
      title: TradeItem
      type: object
      properties:
        tradeItemId:
          type: string
          format: uuid
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Queries.GetBrandsByOwnerCompanyIdQuery_Brand:
      title: Brand
      type: object
      properties:
        id:
          type: string
          format: uuid
        brandName:
          type: string
          nullable: true
        ownerCompanyId:
          type: string
          format: uuid
        isActive:
          type: boolean
        externalCode:
          type: string
          nullable: true
        modifiedBy:
          type: string
          nullable: true
        modifiedAt:
          type: string
          nullable: true
        createdBy:
          type: string
          nullable: true
        createdAt:
          type: string
          nullable: true
        brandNameVariants:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.BrandNameVariant
          nullable: true
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Queries.GetManufacturedItemsByFiltersQuery_ManufacturedItems:
      title: ManufacturedItems
      type: object
      properties:
        manufacturedItems:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Queries.GetManufacturedItemsByFiltersQuery_ManufacturedItemsViewModel_ManufacturedItem
          nullable: true
        skipAndTakeQueryStats:
          title: SkipAndTakeQueryStats
          allOf:
            - $ref: >-
                #/components/schemas/TraceOne.ApiPlatform.MessagesSharedWithClients.Optional.SkipAndTakeQueryStats
          nullable: true
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Queries.GetManufacturedItemsByFiltersQuery_ManufacturedItemsViewModel_ManufacturedItem:
      title: ManufacturedItem
      type: object
      properties:
        id:
          type: string
          format: uuid
        tradeItemId:
          type: string
          format: uuid
        ownerCompanyId:
          type: string
          format: uuid
        supplierCompanyId:
          type: string
          format: uuid
        manufacturedItemName:
          type: string
          nullable: true
        packerCompanyId:
          type: string
          nullable: true
        countriesOfOrigin:
          title: List`1
          type: array
          items:
            type: string
          nullable: true
        targetMarketsList:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.TargetMarket
          nullable: true
        manufacturedItemStatus:
          type: string
          nullable: true
        lastStatusUpdateDateTime:
          type: string
          nullable: true
        isPrivate:
          type: boolean
        createdBy:
          type: string
          nullable: true
        createdAt:
          type: string
          nullable: true
        modifiedBy:
          type: string
          nullable: true
        modifiedAt:
          type: string
          nullable: true
        certificateIds:
          title: List`1
          type: array
          items:
            type: string
            format: uuid
          nullable: true
        removedCertificates:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.RemovedCertificate
          nullable: true
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Queries.GetTradeItemsByFiltersQuery_TradeItem:
      title: TradeItem
      type: object
      properties:
        tradeItems:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Queries.GetTradeItemsByFiltersQuery_TradeItemViewModel_TradeItem
          nullable: true
        skipAndTakeQueryStats:
          title: SkipAndTakeQueryStats
          allOf:
            - $ref: >-
                #/components/schemas/TraceOne.ApiPlatform.MessagesSharedWithClients.Optional.SkipAndTakeQueryStats
          nullable: true
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.Queries.GetTradeItemsByFiltersQuery_TradeItemViewModel_TradeItem:
      title: TradeItem
      type: object
      properties:
        id:
          type: string
          format: uuid
        ownerCompanyId:
          type: string
          format: uuid
        itemName:
          type: string
          nullable: true
        gtin:
          type: string
          nullable: true
        brandId:
          type: string
          nullable: true
        brandName:
          type: string
          nullable: true
        netContentValue:
          type: string
          nullable: true
        netContentUnit:
          type: string
          nullable: true
        category:
          title: Category
          allOf:
            - $ref: >-
                #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.Category
          nullable: true
        productRange:
          type: string
          nullable: true
        functionalName:
          type: string
          nullable: true
        variant:
          type: string
          nullable: true
        packagingFormat:
          type: string
          nullable: true
        isTradeItemVariableUnit:
          type: string
          nullable: true
        isTradeItemBaseUnit:
          type: string
          nullable: true
        isTradeItemSeasonal:
          type: string
          nullable: true
        seasonalAvailabilityStartDate:
          type: string
          nullable: true
        seasonalAvailabilityEndDate:
          type: string
          nullable: true
        productTypeId:
          type: string
          nullable: true
        dietTypeCodeId:
          type: string
          nullable: true
        tradeItemStatus:
          type: string
          nullable: true
        lastStatusUpdateDateTime:
          type: string
          nullable: true
        ean7Price:
          type: string
          nullable: true
        ean7Weight:
          type: string
          nullable: true
        retailerIdentifiers:
          title: List`1
          type: array
          items:
            type: string
          nullable: true
        retailerProductManager:
          type: string
          nullable: true
        retailerQualityManager:
          type: string
          nullable: true
        retailerPackagingManager:
          type: string
          nullable: true
        netContents:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.TradeItemViewModelBase_NetContent
          nullable: true
        packagingNetContentDescription:
          type: string
          nullable: true
        manufacturingPeriod:
          type: string
          nullable: true
        isConsumerUnit:
          type: string
          nullable: true
        commentIds:
          title: List`1
          type: array
          items:
            type: string
            format: uuid
          nullable: true
        retailerCustomizedAttributes:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.TradeItemViewModelBase_RetailerCustomizedAttribute
          nullable: true
        productCategories:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.Category
          nullable: true
        multipack:
          type: string
          nullable: true
        productLanguage:
          type: string
          nullable: true
        modifiedBy:
          type: string
          nullable: true
        modifiedAt:
          type: string
          nullable: true
        createdBy:
          type: string
          nullable: true
        createdAt:
          type: string
          nullable: true
        contacts:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.Contact
          nullable: true
        customProductTypeId:
          type: string
          nullable: true
        harmonizedCode:
          type: string
          nullable: true
        variableWeight:
          title: VariableWeightModel
          allOf:
            - $ref: >-
                #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.TradeItemViewModelBase_VariableWeightModel
          nullable: true
        drainedNetWeight:
          title: DrainedNetWeightModel
          allOf:
            - $ref: >-
                #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.TradeItemViewModelBase_DrainedNetWeightModel
          nullable: true
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.BrandNameVariant:
      title: BrandNameVariant
      type: object
      properties:
        name:
          type: string
          nullable: true
        languageCode:
          type: string
          nullable: true
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.Category:
      title: Category
      type: object
      properties:
        categoryId:
          type: string
          format: uuid
        categoryItemId:
          type: string
          format: uuid
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.Contact:
      title: Contact
      type: object
      properties:
        userId:
          type: string
          format: uuid
        responsibilityId:
          type: string
          format: uuid
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.DrainedNetWeight:
      title: DrainedNetWeight
      type: object
      properties:
        value:
          type: number
          format: double
        unitOfMeasure:
          type: string
          description: >-
            Values of UnitOfMeasure can be Net Content Reference List Item Id
            for g, kg and mg
          format: uuid
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.RemovedCertificate:
      title: RemovedCertificate
      type: object
      properties:
        certificateId:
          type: string
          format: uuid
        reason:
          type: string
          nullable: true
        removedDate:
          type: string
          format: date-time
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.TargetMarket:
      title: TargetMarket
      type: object
      properties:
        countryCodes:
          title: List`1
          type: array
          items:
            type: string
          nullable: true
        pointsOfSales:
          title: List`1
          type: array
          items:
            type: string
            format: uuid
          nullable: true
        startAvailabilityDate:
          type: string
          nullable: true
        endAvailabilityDate:
          type: string
          nullable: true
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.TradeItemViewModelBase_DrainedNetWeightModel:
      title: DrainedNetWeightModel
      type: object
      properties:
        value:
          type: number
          format: double
        unitOfMeasure:
          type: string
          format: uuid
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.TradeItemViewModelBase_NetContent:
      title: NetContent
      type: object
      properties:
        value:
          type: string
          nullable: true
        unitOfMeasure:
          type: string
          format: uuid
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.TradeItemViewModelBase_RetailerCustomizedAttribute:
      title: RetailerCustomizedAttribute
      type: object
      properties:
        retailerLabel:
          type: string
          nullable: true
        retailerCode:
          type: string
          nullable: true
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.TradeItemViewModelBase_VariableWeightModel:
      title: VariableWeightModel
      type: object
      properties:
        minimumValue:
          type: number
          format: double
        maximumValue:
          type: number
          format: double
        unitOfMeasure:
          type: string
          format: uuid
      additionalProperties: false
    TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.VariableWeight:
      title: VariableWeight
      type: object
      properties:
        minimumValue:
          type: number
          format: double
        maximumValue:
          type: number
          format: double
        unitOfMeasure:
          type: string
          description: >-
            Values of UnitOfMeasure can be Net Content Reference List Item Id
            for g, kg and mg
          format: uuid
      additionalProperties: false
    TraceOne.ApiPlatform.Endpoint.Clients.Http.ErrorHttpResponse:
      title: ErrorHttpResponse
      type: object
      properties:
        error:
          type: string
          nullable: true
        errorCode:
          type: string
          nullable: true
          deprecated: true
        errorCodes:
          title: HashSet`1
          uniqueItems: true
          type: array
          items:
            type: string
            format: uuid
          nullable: true
      additionalProperties: false
    TraceOne.ApiPlatform.MessagesSharedWithClients.Optional.SkipAndTakeQueryStats:
      title: SkipAndTakeQueryStats
      type: object
      properties:
        totalCount:
          type: integer
          format: int32
        currentCount:
          type: integer
          format: int32
      additionalProperties: false
    TraceOneApiProductMasterDataDefaultMessagesCommandsCreateBrandCommandBodyDynamicMessageContract:
      title: >-
        TraceOneApiProductMasterDataDefaultMessagesCommandsCreateBrandCommandBodyDynamicMessageContract
      required:
        - brandName
        - externalCode
        - ownerCompanyId
      type: object
      properties:
        ownerCompanyId:
          type: string
          format: uuid
        brandName:
          minLength: 1
          type: string
        brandNameVariants:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.BrandNameVariant
          nullable: true
        externalCode:
          minLength: 1
          type: string
      additionalProperties: false
    TraceOneApiProductMasterDataDefaultMessagesCommandsCreateManufacturedItemCommandBodyDynamicMessageContract:
      title: >-
        TraceOneApiProductMasterDataDefaultMessagesCommandsCreateManufacturedItemCommandBodyDynamicMessageContract
      required:
        - supplierCompanyId
      type: object
      properties:
        manufacturedItemName:
          type: string
          nullable: true
        supplierCompanyId:
          type: string
          format: uuid
        packerCompanyId:
          type: string
          nullable: true
        countriesOfOrigin:
          title: List`1
          type: array
          items:
            type: string
          nullable: true
        targetMarketsList:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.TargetMarket
          nullable: true
        manufacturedItemStatusId:
          type: string
          nullable: true
        manufacturedItemId:
          type: string
          nullable: true
        createdBy:
          type: string
          description: >-
            UserId of the Creator.  This attribute can be used only for Internal
            Service requests
          nullable: true
      additionalProperties: false
    TraceOneApiProductMasterDataDefaultMessagesCommandsCreateTradeItemAndManufacturedItemCommandBodyDynamicMessageContract:
      title: >-
        TraceOneApiProductMasterDataDefaultMessagesCommandsCreateTradeItemAndManufacturedItemCommandBodyDynamicMessageContract
      required:
        - ownerCompanyId
        - supplierCompanyId
        - tradeItemName
      type: object
      properties:
        tradeItemName:
          minLength: 1
          type: string
        ownerCompanyId:
          type: string
          format: uuid
        tradeItemId:
          type: string
          nullable: true
        tradeItemStatusId:
          type: string
          nullable: true
        gtin:
          type: string
          nullable: true
        brandId:
          type: string
          nullable: true
        categoryListId:
          type: string
          nullable: true
        categoryItemId:
          type: string
          nullable: true
        netContentValue:
          type: string
          nullable: true
        netContentUnit:
          type: string
          nullable: true
        manufacturedItemName:
          type: string
          nullable: true
        supplierCompanyId:
          type: string
          format: uuid
        netContents:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.CreateTradeItemAndManufacturedItemCommand_NetContent
          nullable: true
        packagingNetContentDescription:
          type: string
          nullable: true
        manufacturingPeriod:
          type: string
          nullable: true
        comments:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.CreateTradeItemAndManufacturedItemCommand_Comment
          nullable: true
        retailerCustomizedAttributes:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.CreateTradeItemAndManufacturedItemCommand_RetailerCustomizedAttribute
          nullable: true
        isConsumerUnit:
          type: string
          nullable: true
        manufacturedItemStatusId:
          type: string
          nullable: true
        productCategories:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.Category
          nullable: true
        targetMarketsList:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.TargetMarket
          nullable: true
        multipack:
          type: string
          nullable: true
        productLanguage:
          type: string
          nullable: true
        contacts:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.Contact
          nullable: true
        customProductTypeId:
          type: string
          nullable: true
      additionalProperties: false
    TraceOneApiProductMasterDataDefaultMessagesCommandsCreateTradeItemCommandBodyDynamicMessageContract:
      title: >-
        TraceOneApiProductMasterDataDefaultMessagesCommandsCreateTradeItemCommandBodyDynamicMessageContract
      required:
        - ownerCompanyId
        - tradeItemName
      type: object
      properties:
        tradeItemName:
          minLength: 1
          type: string
        ownerCompanyId:
          type: string
          format: uuid
        tradeItemId:
          type: string
          nullable: true
        gtin:
          type: string
          nullable: true
        brandId:
          type: string
          nullable: true
        categoryListId:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use
            ProductCategories attribute instead.
          nullable: true
        categoryItemId:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use
            ProductCategories attribute instead.
          nullable: true
        netContentValue:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use NetContents
            attribute instead.
          nullable: true
        netContentUnit:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use NetContents
            attribute instead.
          nullable: true
        packagingFormat:
          type: string
          nullable: true
        productTypeId:
          type: string
          nullable: true
        tradeItemStatusId:
          type: string
          nullable: true
        ean7Weight:
          type: string
          nullable: true
        ean7Price:
          type: string
          nullable: true
        retailerIdentifiers:
          title: List`1
          type: array
          items:
            type: string
          nullable: true
        retailerProductManager:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use Contacts
            attribute instead.
          nullable: true
        retailerPackagingManager:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use Contacts
            attribute instead.
          nullable: true
        retailerQualityManager:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use Contacts
            attribute instead.
          nullable: true
        productRange:
          type: string
          nullable: true
        functionalName:
          type: string
          nullable: true
        variant:
          type: string
          nullable: true
        isTradeItemVariableUnit:
          type: string
          nullable: true
        isTradeItemBaseUnit:
          type: string
          nullable: true
        isTradeItemSeasonal:
          type: string
          nullable: true
        seasonalAvailabilityStartDate:
          type: string
          nullable: true
        seasonalAvailabilityEndDate:
          type: string
          nullable: true
        dietTypeCodeId:
          type: string
          nullable: true
        netContents:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.CreateTradeItemCommand_NetContent
          nullable: true
        packagingNetContentDescription:
          type: string
          nullable: true
        manufacturingPeriod:
          type: string
          nullable: true
        comments:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.CreateTradeItemCommand_Comment
          nullable: true
        retailerCustomizedAttributes:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.CreateTradeItemCommand_RetailerCustomizedAttribute
          nullable: true
        isConsumerUnit:
          type: string
          nullable: true
        productCategories:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.Category
          nullable: true
        multipack:
          type: string
          nullable: true
        productLanguage:
          type: string
          nullable: true
        contacts:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.Contact
          nullable: true
        customProductTypeId:
          type: string
          nullable: true
        createdBy:
          type: string
          description: >-
            UserId of the Creator.  This attribute can be used only for Internal
            Service requests
          nullable: true
        harmonizedCode:
          type: string
          nullable: true
        drainedNetWeight:
          title: DrainedNetWeight
          allOf:
            - $ref: >-
                #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.DrainedNetWeight
          description: >-
            Allowed only g (gram), kg (kilogram) and mg (milligram), cg
            (centigram), dg (decigram), mcg (microgram), ton
          nullable: true
        variableWeight:
          title: VariableWeight
          allOf:
            - $ref: >-
                #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.VariableWeight
          description: >-
            Allowed only g (gram), kg (kilogram) and mg (milligram), cg
            (centigram), dg (decigram), mcg (microgram), ton
          nullable: true
      additionalProperties: false
    TraceOneApiProductMasterDataDefaultMessagesCommandsDisableTradeItemCommandBodyDynamicMessageContract:
      title: >-
        TraceOneApiProductMasterDataDefaultMessagesCommandsDisableTradeItemCommandBodyDynamicMessageContract
      required:
        - idCollection
      type: object
      properties:
        idCollection:
          title: List`1
          type: array
          items:
            type: string
            format: uuid
      additionalProperties: false
    TraceOneApiProductMasterDataDefaultMessagesCommandsPartialUpdateManufacturedItemCommandBodyDynamicMessageContract:
      title: >-
        TraceOneApiProductMasterDataDefaultMessagesCommandsPartialUpdateManufacturedItemCommandBodyDynamicMessageContract
      type: object
      properties:
        manufacturedItemName:
          type: string
          nullable: true
        packerCompanyId:
          type: string
          nullable: true
        countriesOfOrigin:
          title: List`1
          type: array
          items:
            type: string
          nullable: true
        targetMarketsList:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.TargetMarket
          nullable: true
        manufacturedItemStatusId:
          type: string
          nullable: true
      additionalProperties: false
    TraceOneApiProductMasterDataDefaultMessagesCommandsPartialUpdateTradeItemCommandBodyDynamicMessageContract:
      title: >-
        TraceOneApiProductMasterDataDefaultMessagesCommandsPartialUpdateTradeItemCommandBodyDynamicMessageContract
      type: object
      properties:
        tradeItemName:
          type: string
          nullable: true
        gtin:
          type: string
          nullable: true
        brandId:
          type: string
          nullable: true
        categoryListId:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use
            ProductCategories attribute instead.
          nullable: true
        categoryItemId:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use
            ProductCategories attribute instead.
          nullable: true
        netContentValue:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use NetContents
            attribute instead.
          nullable: true
        netContentUnit:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use NetContents
            attribute instead.
          nullable: true
        packagingFormat:
          type: string
          nullable: true
        productTypeId:
          type: string
          nullable: true
        tradeItemStatusId:
          type: string
          nullable: true
        ean7Weight:
          type: string
          nullable: true
        ean7Price:
          type: string
          nullable: true
        retailerIdentifiers:
          title: List`1
          type: array
          items:
            type: string
          nullable: true
        retailerProductManager:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use Contacts
            attribute instead.
          nullable: true
        retailerPackagingManager:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use Contacts
            attribute instead.
          nullable: true
        retailerQualityManager:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use Contacts
            attribute instead.
          nullable: true
        productRange:
          type: string
          nullable: true
        functionalName:
          type: string
          nullable: true
        variant:
          type: string
          nullable: true
        isTradeItemVariableUnit:
          type: string
          nullable: true
        isTradeItemBaseUnit:
          type: string
          nullable: true
        isTradeItemSeasonal:
          type: string
          nullable: true
        seasonalAvailabilityStartDate:
          type: string
          nullable: true
        seasonalAvailabilityEndDate:
          type: string
          nullable: true
        dietTypeCodeId:
          type: string
          nullable: true
        netContents:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.PartialUpdateTradeItemCommand_NetContent
          nullable: true
        packagingNetContentDescription:
          type: string
          nullable: true
        manufacturingPeriod:
          type: string
          nullable: true
        retailerCustomizedAttributes:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.PartialUpdateTradeItemCommand_RetailerCustomizedAttribute
          nullable: true
        isConsumerUnit:
          type: string
          nullable: true
        comments:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.PartialUpdateTradeItemCommand_Comment
          nullable: true
        productCategories:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.Category
          nullable: true
        contacts:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.Contact
          nullable: true
        customProductTypeId:
          type: string
          nullable: true
        drainedNetWeight:
          title: DrainedNetWeight
          allOf:
            - $ref: >-
                #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.DrainedNetWeight
          nullable: true
        variableWeight:
          title: VariableWeight
          allOf:
            - $ref: >-
                #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.VariableWeight
          nullable: true
      additionalProperties: false
    TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateBrandCommandBodyDynamicMessageContract:
      title: >-
        TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateBrandCommandBodyDynamicMessageContract
      required:
        - brandName
        - externalCode
      type: object
      properties:
        brandName:
          minLength: 1
          type: string
        brandNameVariants:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.BrandNameVariant
          nullable: true
        externalCode:
          minLength: 1
          type: string
      additionalProperties: false
    TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateManufacturedItemCommandBodyDynamicMessageContract:
      title: >-
        TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateManufacturedItemCommandBodyDynamicMessageContract
      type: object
      properties:
        manufacturedItemName:
          type: string
          nullable: true
        packerCompanyId:
          type: string
          nullable: true
        countriesOfOrigin:
          title: List`1
          type: array
          items:
            type: string
          nullable: true
        targetMarketsList:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.TargetMarket
          nullable: true
        manufacturedItemStatusId:
          type: string
          nullable: true
      additionalProperties: false
    TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateTradeItemCommandBodyDynamicMessageContract:
      title: >-
        TraceOneApiProductMasterDataDefaultMessagesCommandsUpdateTradeItemCommandBodyDynamicMessageContract
      type: object
      properties:
        tradeItemName:
          type: string
          nullable: true
        gtin:
          type: string
          nullable: true
        brandId:
          type: string
          nullable: true
        categoryListId:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use
            ProductCategories attribute instead.
          nullable: true
        categoryItemId:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use
            ProductCategories attribute instead.
          nullable: true
        netContentValue:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use NetContents
            attribute instead.
          nullable: true
        netContentUnit:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use NetContents
            attribute instead.
          nullable: true
        packagingFormat:
          type: string
          nullable: true
        productTypeId:
          type: string
          nullable: true
        tradeItemStatusId:
          type: string
          nullable: true
        ean7Weight:
          type: string
          nullable: true
        ean7Price:
          type: string
          nullable: true
        retailerIdentifiers:
          title: List`1
          type: array
          items:
            type: string
          nullable: true
        retailerProductManager:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use Contacts
            attribute instead.
          nullable: true
        retailerPackagingManager:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use Contacts
            attribute instead.
          nullable: true
        retailerQualityManager:
          type: string
          description: >-
            [Obsolete] This attribute is deprecated. Please use Contacts
            attribute instead.
          nullable: true
        productRange:
          type: string
          nullable: true
        functionalName:
          type: string
          nullable: true
        variant:
          type: string
          nullable: true
        isTradeItemVariableUnit:
          type: string
          nullable: true
        isTradeItemBaseUnit:
          type: string
          nullable: true
        isTradeItemSeasonal:
          type: string
          nullable: true
        seasonalAvailabilityStartDate:
          type: string
          nullable: true
        seasonalAvailabilityEndDate:
          type: string
          nullable: true
        dietTypeCodeId:
          type: string
          nullable: true
        netContents:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.UpdateTradeItemCommand_NetContent
          nullable: true
        packagingNetContentDescription:
          type: string
          nullable: true
        manufacturingPeriod:
          type: string
          nullable: true
        retailerCustomizedAttributes:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.UpdateTradeItemCommand_RetailerCustomizedAttribute
          nullable: true
        isConsumerUnit:
          type: string
          nullable: true
        comments:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.Commands.UpdateTradeItemCommand_Comment
          nullable: true
        productCategories:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.Category
          nullable: true
        contacts:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.Contact
          nullable: true
        customProductTypeId:
          type: string
          nullable: true
        harmonizedCode:
          type: string
          nullable: true
        drainedNetWeight:
          title: DrainedNetWeight
          allOf:
            - $ref: >-
                #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.DrainedNetWeight
          description: >-
            Allowed only g (gram), kg (kilogram) and mg (milligram), cg
            (centigram), dg (decigram), mcg (microgram), ton
          nullable: true
        variableWeight:
          title: VariableWeight
          allOf:
            - $ref: >-
                #/components/schemas/TraceOne.Api.ProductMasterData.Default.Messages.ViewModels.VariableWeight
          description: >-
            Allowed only g (gram), kg (kilogram) and mg (milligram), cg
            (centigram), dg (decigram), mcg (microgram), ton
          nullable: true
      additionalProperties: false
  securitySchemes:
    Bearer:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://ws-users.traceone.com/default/connect/token
          scopes:
            t1_api: t1_api
security:
  - Bearer: []
tags:
  - name: Brand
  - name: Trade Item
  - name: Manufactured Item
